Présentation du logiciel

Ce programme écrit en Visual Basic permet de piloter un réseau de trains miniatures par ordinateur en DCC.
J'ai créé une version pour l'ARDUINO basée sur un classeur Excel avec une macro écrite en VBA. Ce logiciel s'utilise conjointement avec JMRI DecoderPro.

Ce logiciel se distingue des autres logiciels de pilotage de réseau en ce sens qu'il n'y a pas d'interface graphique avec création d'un dessin de réseau.
Pour créer un trajet, il suffit d'utiliser DecoderPro et de piloter un train avec un smartphone ou une tablette. L'ordinateur enregistre automatiquement les mouvements du train et crée un trajet qui peut ensuite être reproduit automatiquement par l'ordinateur avec CARTO-DCC. La prise en main du logiciel est ainsi très rapide. Il suffit de s'habituer à l'utilisation du smartphone et de Engine Driver.
Il est possible de se passer du smartphone en utilisant le régulateur de DecoderPro mais cette solution ne permet pas de suivre les trains sur le réseau, ce qui n'est pas pratique.

Les trajets créés automatiquement par l'ordinateur sont associés à des itinéraires. Un trajet correspond à la circulation d'un ou deux trains. Un itinéraire peut contenir jusqu'à 4 trajets. Il est donc possible de faire circuler simultanément jusqu'à 8 trains sur le réseau.

Les itinéraires sont décrits dans des tableaux Excel.
La figure ci-dessous montre les donneées d'un tableau Excel correspondant à un trajet.


Chaque ligne du tableau correspond à une commande qui sera exécutée pendant un temps indiqué dans la colonne intitulée durée.La liste des colonnes est la suivante::
colonne A: adresse loco
colonne B: sens de marche. ma=1 correspond à la marche avant et ma=0 correspond à la marche arrière
colonne C: vitesse entre 0 et 27
colonnes D à L: fonctions F0 à F8
colonne M: durée de la séquence entre 1 et 99 secondes. Les valeurs supérieures à 100 correspondent à l'attente du signal d'un détecteur de passage ou d'occupation de canton colonne N: numéro de l'aiguillage à commander
colonne O: commande la position de l'aiguille (0 pour direct et 1 pour dévié)
Le numéro zéro de la colonne N est réservé pour la sonorisation du réseau

La macro VBA lit les données des feuilles Excel sélectionnées pour un itinéraire et exécute les commandes correspondantes.

Paramétrage de JMRI DecoderPro et de Engine Driver

Lancer DecoderPro et choisir le SPROG comme centrale et indiquer comme port COM celui de l'ARDUINO.
Lorsque l'ordinateur contenant JMRI est connecté a un réseau sans fil WiFi (typiquement une box d’un fournisseur d’accès ou un routeur WiFi), on peut lancer un module appelé Withrottle qui permet à tout smartphone connecté sur le réseau wifi de controler :
o Des locomotoves
o Des aiguillages
o Des itineraires
Voici une petite vidéo de démonstration:

Si vous possédez un smartphone avec Android, il n'est pas nécessaire d'utiliser un routeur WiFi.
Vous pouvez connecter le smartphone directement au PC en WiFi en utilisant la fonction "point d'accès WiFi" du smartphone.
Pour cela, activez le Wi-Fi sur votre appareil Android et rendez-vous dans « Paramètres », « Sans fil et réseaux » et « Partage de connexion ».
Appuyez sur « Configurer le point d’accès Wi-Fi » et cochez la ligne « Point d’accès Wi-Fi »
Dès lors, vous n’avez plus qu’à actualiser la liste des connexions Wi-Fi disponibles sur votre PC/Mac et choisir le réseau nommé AndroidAP.
JMRI reconnaitra automatiquement ce réseau et va fournir l'adresse IP et le numéro de port à indiquer à Engine Driver.

Enregistrement d'un trajet

Il est possible d'enregistrer avec DecoderPro un trajet qui sera ensuite stocké sur l'ordinateur sous forme d'une feuille d'un classeur Excel.
Le trajet peut ensuite être exécuté en automatique par le logiciel CARTO-DCC installé sur l'ordinateur.

Voici la procédure à suivre:

Sur le régulateur connecté à l'unité centrale, passer en mode PC.

Lancer DecoderPro 3
cliquer sur "SPROG" puis sur "Command Monitor"
cocher "Show Timestamps"
cliquer sur "choose log file" et choisir "Enregistrer" dans le dossier CARTO-DCC
Laisser comme nom de fichier "monitorLog.txt"
Cliquer sur "Enregistrer"
cliquer sur "start logging" pour démarrer l'enregistrement

cliquer sur "Actions" puis sur "Start WiThrottle Server"

Faire circuler la loco avec Engine Driver

cliquer sur "stop logging" pour arrêter l'enregistrement et fermer DecoderPro.

Si on veut aussi commander les accessoires, alors il faut aussi cliquer sur "Actions" puis sur "TurnOut Control" et entrer l'une des adresses des décodeurs d'accessoires.

Lorsque l'enregistrement est terminé, fermer DecoderPro.

Ouvrir le classeur Excel CARTO-DCC.xls et cliquer sur "activer les macros".
Vous devez voir l'écran ci-dessous avec la fenêtre de la macro VBA intitulée CARTO-DCC


Cliquer sur "Enregistrement" puis choisir le numéro du trajet à enregistrer (entre 1 et 10) puis cliquer sur le bouton "Création du trajet". Fermer la fenêtre de la macro VBA en cliquant sur la croix rouge en haut à droite de la fenêtre.
L'écran affiche maintenant la feuille Excel avec le tableau du trajet créé.
Vous pouvez modifier ce tableau pour changer la durée des séquences ou tout autre paramètre. Fermer le classeur Excel et enregistrer les modifications.

Création d'un itinéraire

Un itinéraire est constitué de un ou plusieurs trajets (4 au maximum) décrits dans 4 feuilles du classeur.
Chaque feuille correspond un à trajet qui peut être effectué par un ou deux trains de manière séquentielle.
Les itinéraires sont décrits dans la feuille du classeur intitulée "Itinéraires"
Pour chaque itinéraire, vous indiquez les numéros des trajets associés à cet itinéraire.
On peut créer jusqu'à 99 itinéraires.

Exécution d'un itinéraire

Ouvrir le classeur Excel CARTO-DCC.xls et cliquer sur activer les macros.
Dans la fenêtre de la macro VBA, indiquer le numéro du port COM de l'ARDUINO et le numéro de l'itinéraire à exécuter puis cliquer sur le bouton "Exécuter".
Le programme s'arrête automatiquement à la fin de l'itinéraire. Pour arrêter le programme en cours d'exécution, appuyer sur la touche Esc.